# Mybatis Plus 自定义 SQL

# 一、在 mapper 层自定义查询方法

@Mapper
public interface UserTableMapper extends BaseMapper<UserTableEntity> {

    /**
     * 自定义查询方法
     * @param username 用户名
     */
    List<UserTableEntity> selectAllByUsername(@Param("username") String username);
}
1
2
3
4
5
6
7
8
9

@param 传参。

# 二、在 mapper.xml 文件中写下具体查询内容

一般是在 resoucesmapper 目录下自定义 xml 文件,我这边是 src/main/resources/mapper/UserTableMapper.xml

<mapper namespace="com.example.library.mapper.UserTableMapper">

  <sql id="Base_Column">
    id, username, password
  </sql>

  <select id="selectAllByUsername" resultType="com.example.library.entity.UserTableEntity">
    select <include refid = "Base_Column"/>
    from sys_user
    where username = #{username}
  </select>
</mapper>
1
2
3
4
5
6
7
8
9
10
11
12

select id 对应方法名,resultType 是实体类,通过 #{} 使用方法的参数。